#ifndef __MY_UI_H__
#define __MY_UI_H__


#ifdef _WIN32
#define localtime_r(x, y) localtime_s(y, x)
#endif
#include "head.h"
#include "ui.h"
#include <time.h> 
// #define _DEFAULT_SOURCE /* needed for usleep() */
#include <stdlib.h>
#include <unistd.h>
#include "../UI/ui_helpers.h"
#define SDL_MAIN_HANDLED /*To fix SDL's "undefined reference to WinMain" issue*/
// #include <SDL2/SDL.h>
#include "lvgl/lvgl.h"
#include "lvgl/examples/lv_examples.h"
#include "lvgl/demos/lv_demos.h"
#include "lv_drivers/sdl/sdl.h"
#include "pthread.h"
#include <stdio.h>
void update_mileage_display(lv_obj_t *mileage_label);//更新里程显示
void update_mileage_display(lv_obj_t *mileage_label);
int get_current_speed(void);//获取当前速度
void update_fuel_consumption(void);//更新油耗
void my_ui_init(void);//初始化我的UI

void *speed_routine(void*arg);//速度线程

 void time_update_event_cb(lv_timer_t *timer);//定义时间回调函数

void speedanim_Animation(lv_obj_t * TargetObject, int delay, int input_speed);//定义速度动画
void zhuangsuanim_Animation(lv_obj_t * TargetObject, int delay,int input_value);//定义转速动画
void youbiaoanin_Animation(lv_obj_t * TargetObject, int delay, int input_value);//定义油表动画
void temperatureanim_Animation(lv_obj_t * TargetObject, int delay, int input_value);//定义温度动画
void gongneng(lv_event_t * e);//定义功能键回调函数
void update_timer_display(void);//定义更新定时器显示函数
void timer_start(void);//定义开始定时器函数
void timer_stop(void);//定义停止定时器函数
void timer_init(void);
void timer_reset(void);
void timer_count_event_cb(lv_timer_t *timer);//定义定时器回调函数
#endif /* __MY_UI_H__ */